package com.wwz.leetcode;

import org.junit.Test;

public class LeetCode371 {

/**
    一：与运算符（&）
    有0得0

    二：或运算（|）
    有1得1

    三：异或运算符（^）
    相同得0，不同得1
 */
    @Test
    public void test() {
        getSum(5,4);
    }
    public int getSum(int a, int b) {
        while (b != 0) {
            // 进位后的进位结果
            int carry = (a & b) << 1;
            a = a ^ b;
            b = carry;
        }
        return a;
    }
}
